package zhongbo.java.websocket.demo.dto;

import lombok.Data;

/**
 * 说明：
 *
 * @author 钟波dellNotebook
 * @since 2025年03月17日 星期一 22:12:06
 */
@Data
public class ResultDto<T> {

    private int code;

    private String msg;

    private T data;

    public static <T> ResultDto<T> success() {
        ResultDto<T> resultDto = new ResultDto<>();
        resultDto.setCode(0);
        return resultDto;
    }

    public static <T> ResultDto<T> ok(T data) {
        ResultDto<T> resultDto = new ResultDto<>();
        resultDto.setCode(0);
        resultDto.setData(data);
        return resultDto;
    }

    public static <T> ResultDto<T> failed() {
        ResultDto<T> resultDto = new ResultDto<>();
        resultDto.setCode(-1);
        return resultDto;
    }

    public static <T> ResultDto<T> error(String msg) {
        ResultDto<T> resultDto = new ResultDto<>();
        resultDto.setCode(-1);
        resultDto.setMsg(msg);
        return resultDto;
    }

}
